As mobile terminals including smartphones have been widely used, their hardware and software have been continuously developed for a variety of additional functions in addition to a communication function.
The mobile terminals may interact with a variety of other devices as well as base stations. For example, the mobile terminals may interact with an accessory apparatus, i.e., an apparatus for providing a service(s) to the mobile terminals after being connected with it through a Universal Serial Bus (“USB”) and so forth. In particular, the Android operating system provides an accessory protocol (or the Android open accessory protocol) to allow the communication with the accessory apparatus. An Android device with the Android operating system may communicate with the accessory apparatus through the accessory protocol.
However, the accessory protocol supports only a one-to-one communication with a single communication channel. In other words, the problem is that only one Android application may communicate with an accessory apparatus at a time during communication between a mobile terminal and the accessory apparatus. Under multitasking environment, it may be necessary for multiple applications on an Android device to communicate with external devices at the same time but the accessory protocol cannot support such communications. For example, if services using the accessory apparatus are provided through multiple apps, only one application of them can use a connection between the mobile terminal and the accessory apparatus.
Korean Laid-Open Publication No. 10-2011-7024283 and so forth in relation to the communication between a mobile terminal and an accessory apparatus have been disclosed, but they do not suggest any solution regarding the above-mentioned problems.
Therefore, the inventor of the present invention came to develop the technology of allowing multiple applications to communicate simultaneously between a mobile terminal and an accessory apparatus by providing multiple channels which use an accessory protocol and distinguishable by port number.